import re

# * 匹配前一个字符出现0次或者无限次
print(re.search('he\w*', 'he').group())
print(re.search('he\w*', 'hello_world').group())

# + 匹配前一个字符出现1次或者无限次
print(re.search('he+', 'heeeeee').group())
print(re.search('he+', 'he').group())
print(re.search('he+', 'heo').group())

# ? 匹配前一个字符出现1次或者0次
print(re.search('he?', 'he').group())
print(re.search('he?', 'hxxx').group())

# {m} 匹配前一个字符出现m次
print(re.search('he{3}', 'heeeell').group())
# {m,n} 匹配前一个字符出现m到n次
print(re.search('he\w{2,5}', 'heqwe').group())
# print(re.search('he\w{2,5}', 'heq').group())  #不能匹配
print(re.search('he\w{2,5}', 'heqdasasd').group())  # 贪婪模式

# {m,} 匹配前一个字符至少出现m次
print(re.search('he\w{2,}', 'heqwe').group())
print(re.search('he\w{2,}', 'heq').group())  # 不能匹配
